package pe.com.drokasa.android.client.controller;

import pe.com.drokasa.android.client.R;
import pe.com.drokasa.android.client.constantes.Constantes;
import pe.com.drokasa.android.client.constantes.Constantes.Preferencias;
import pe.com.drokasa.android.client.controller.configuracion.ConfiguracionActivity;
import pe.com.drokasa.android.client.util.VariableAplicacion;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.os.Handler;

/**
 * Activity de la vista de presentaci&oacute;n de la aplicaci&oacute;n.
 * 
 * @author Synopsis S.A
 *
 */
public class SplashActivity extends Activity 
{
	private final int SPLASH_TIME = 2500;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) 
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_bienvenida);
		
		new Handler().postDelayed(new Runnable() 
		{	
			@Override
			public void run() 
			{	
				redireccionar();
			}
		}, SPLASH_TIME);
	}
	
	/**
	 * Realiza redirecci&oacute;n hacia el men&uacute; principal.
	 * En caso no se haya realiza la configuraci&oacute;n de par&aacute;metros
	 * de aplicaci&oacute;n, se pedir&aacute; al usuario ingresar los datos.
	 * 
	 */
	private void redireccionar()
	{
		SharedPreferences preferences = getSharedPreferences(Preferencias.FILENAME, Context.MODE_PRIVATE);
		
		if(Constantes.CADENA_VACIA.equals(preferences.getString(Preferencias.CODIGO_VENDEDOR, "")))
		{
			startActivity(new Intent(SplashActivity.this, ConfiguracionActivity.class));
			finish();
		}
		else
		{
			inicializarDatos();
			startActivity(new Intent(SplashActivity.this, MenuPrincipalActivity.class));
			finish();
		}
	}
	
	/**
	 * 
	 */
	private void inicializarDatos()
	{
		SharedPreferences preferences = getSharedPreferences(Preferencias.FILENAME, Context.MODE_PRIVATE);
		
		VariableAplicacion.limpiar();
		VariableAplicacion.setObjeto(VariableAplicacion.CANAL, preferences.getString(Preferencias.CANAL, Constantes.CANAL_SOCKETS));
		VariableAplicacion.setObjeto(VariableAplicacion.CODIGO_APLICACION, preferences.getString(Preferencias.CODIGO_APLICACION, Constantes.CADENA_VACIA));
		VariableAplicacion.setObjeto(VariableAplicacion.CODIGO_TRANSACCION, preferences.getString(Preferencias.CODIGO_TRANSACCION_CONSULTA_STOCK, Constantes.CADENA_VACIA));
		VariableAplicacion.setObjeto(VariableAplicacion.CODIGO_TIPO_DISPOSITIVO, preferences.getString(Preferencias.CODIGO_TIPO_DISPOSITIVO, Constantes.CADENA_VACIA));
		VariableAplicacion.setObjeto(VariableAplicacion.CODIGO_VENDEDOR, preferences.getString(Preferencias.CODIGO_VENDEDOR, Constantes.CADENA_VACIA));
		VariableAplicacion.setObjeto(VariableAplicacion.USUARIO, preferences.getString(Preferencias.USUARIO, Constantes.CADENA_VACIA));
		VariableAplicacion.setObjeto(VariableAplicacion.PASSWORD, preferences.getString(Preferencias.PASSWORD, Constantes.CADENA_VACIA));
	}
}